package timing.ukulele.third.convertor.msg;

import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.Mappings;
import org.mapstruct.factory.Mappers;
import timing.ukulele.common.data.DtoBaseDataConverter;
import timing.ukulele.data.third.data.msg.MessageKeyMappingFiledDTO;
import timing.ukulele.data.third.view.msg.MessageKeyMappingFiledVO;
import timing.ukulele.third.persistent.msg.MessageKeyMappingFiled;

@Mapper
public interface MessageKeyMappingFiledConverter extends DtoBaseDataConverter<MessageKeyMappingFiled,
        MessageKeyMappingFiledDTO, MessageKeyMappingFiledVO> {

    MessageKeyMappingFiledConverter INSTANCE = Mappers.getMapper(MessageKeyMappingFiledConverter.class);
    @Override
    @Mappings({
            @Mapping(target = "createBy", ignore = true),
            @Mapping(target = "createTime", ignore = true),
            @Mapping(target = "updateBy", ignore = true),
            @Mapping(target = "updateTime", ignore = true),
    })
    MessageKeyMappingFiled v2p(MessageKeyMappingFiledVO vo);

    @Override
    MessageKeyMappingFiledVO p2v(MessageKeyMappingFiled po);

}
